var ThanhToanHoaDon = {
    ListKhachHang: null,
    HienThiDSKhachHang: function(data){
        var container = $('#container');
        var defaultRow = container.parent().find('.default-row');
        var size = data.length;

        container.html('');
        container.parent().find('#help-info').hide();

        if (size > 0){
            for (var i = 0; i < size; i++){
                var row = defaultRow.clone();
                row.removeClass('default-row');

                row.attr('data-text', data[i].id);
                row.find('.hoten').html(data[i].ten);
                row.find('.congno').html(data[i].congno);
                row.find('.sodienthoai').html(data[i].sodienthoai);
                row.find('.diachi').html(data[i].diachi);

                row.appendTo(container).show();

            }
        } else{
            QuanLyBanHangStatic.changeMessage('Thông báo', 'Dữ liệu rỗng');
            QuanLyBanHangStatic.showMessageBox(true, 3000);
            return;
        }
    },
    DanhSachKhachHang: function(){
        $.get(QuanLyBanHangStatic.baseURL + 'KhachHang/DanhSachKhachHang', function(data){
            data = JSON.parse(data);
            ThanhToanHoaDon.ListKhachHang = data;
            ThanhToanHoaDon.HienThiDSKhachHang(data);
        });
    },
    HienThiTatCa: function(){
        this.HienThiDSKhachHang(this.ListKhachHang);
    },
    ChonKhachHang: function(obj){
        $('#cbKhachHangMoi').prop('checked', false);
        obj = $(obj);
        obj.parent().find('.highlight').removeClass('highlight');
        obj.addClass('highlight');

        $('#txtMaKhachHang').val(obj.attr('data-text'));
        $('#txtHoTen').val(obj.find('.hoten').html()).prop('disabled', true);
        $('#txtSoDienThoai').val(obj.find('.sodienthoai').html()).prop('disabled', true);
        $('#txtDiaChi').val(obj.find('.diachi').html()).prop('disabled', true);
        $('#thanhtoan-khachhang').prop('disabled', true);
        $('#txtCongNo').val(QuanLyBanHangStatic.numberWithCommas(obj.find('.congno').html())).autoNumeric(
            'init', {aSep: ',', mDec: '0', vMax: '999999999999999'}
        );
    },
    KhachHangMoi: function(checkbox){
        checkbox = $(checkbox);
        if (checkbox.prop('checked')){
            $('#container .highlight').removeClass('highlight');

            $('#txtMaKhachHang').val(-1);
            $('#txtHoTen').prop('disabled', false).val('');
            $('#txtSoDienThoai').prop('disabled', false).val('');
            $('#txtDiaChi').prop('disabled', false).val('');
            $('#txtCongNo').val(0);
            $('#thanhtoan-khachhang').prop('disabled', false);
        } else{
            $('#txtHoTen').prop('disabled', true);
            $('#txtSoDienThoai').prop('disabled', true);
            $('#txtDiaChi').prop('disabled', true);
            $('#thanhtoan-khachhang').prop('disabled', true);
        }
    },
    TimKhachHang: function(txt, e){
        if (e.keyCode == 13){
            txt = $(txt);

            var search = txt.val();

            var result = this.ListKhachHang.filter(function(obj){
                var regex = new RegExp(search, 'i');
                return (obj.ten.search(regex) != -1 || obj.sodienthoai.search(regex) != -1);
            });

            this.HienThiDSKhachHang(result);
            console.log(result);


        }
    },
    LuuKhachHang: function(button){
        var id          = $('#txtMaKhachHang').val();
        var hoten       = $('#txtHoTen');

        if (hoten.val() == ''){
            QuanLyBanHangStatic.changeMessage('Thông báo', 'Vui lòng nhập <b>Tên khách hàng</b>');
            QuanLyBanHangStatic.showMessageBox(true, 3000);
            hoten.effect('highlight', {color: '#ffd5ad'}, 600)
                .effect('highlight', {color: '#ffd5ad'}, 600);
            hoten.focus();
            return;
        }

        var sodienthoai = $('#txtSoDienThoai');


        if (sodienthoai.val() == ''){
            QuanLyBanHangStatic.changeMessage('Thông báo', 'Vui lòng nhập <b>Số điện thoại</b>');
            QuanLyBanHangStatic.showMessageBox(true, 3000);
            sodienthoai.effect('highlight', {color: '#ffd5ad'}, 600)
                .effect('highlight', {color: '#ffd5ad'}, 600);
            sodienthoai.focus();
            return;
        }


        var diachi      = $('#txtDiaChi');

        if (diachi.val() == ''){
            QuanLyBanHangStatic.changeMessage('Thông báo', 'Vui lòng nhập <b>Địa chỉ</b>');
            QuanLyBanHangStatic.showMessageBox(true, 3000);
            diachi.effect('highlight', {color: '#ffd5ad'}, 600)
                .effect('highlight', {color: '#ffd5ad'}, 600);
            diachi.focus();
            return;
        }

        button = $(button);
        button.prop('disabled', true);
        button.find('.fa-loading').show();

        $.post(QuanLyBanHangStatic.baseURL + 'KhachHang/LuuThongTin', {id: id, hoten: hoten.val(), sodienthoai: sodienthoai.val(), diachi: diachi.val()}, function(data){

            var obj = JSON.parse(data);
            var container = $('#container');
            var defaultRow = container.parent().find('.default-row');

            var row = defaultRow.clone();
            row.removeClass('default-row');
            row.attr('data-text', obj.id);
            row.find('.hoten').html(obj.hoten);
            row.find('.sodienthoai').html(obj.sodienthoai);
            row.find('.diachi').html(obj.diachi);
            row.appendTo(container).show();

            row.effect('highlight', {color: '#ffd5ad'}, 600)
                .effect('highlight', {color: '#ffd5ad'}, 600);

            ThanhToanHoaDon.ChonKhachHang(row[0]);

            button.find('.fa-loading').hide();

        });

    },
    DoiTienTra: function(obj){
        obj = $(obj);
        var tientra = obj.autoNumeric('get');
        var tongtien = $('#txtTongTien').autoNumeric('get');
        var conlai = parseFloat(tongtien) - parseFloat(tientra);
        $('#txtTienConLai').val(QuanLyBanHangStatic.numberWithCommas(conlai));

    },
    ThanhToan: function(button){
        var user = $('#txtMaKhachHang').val();
        if (user == -1){
            QuanLyBanHangStatic.changeMessage('Thông báo', 'Vui lòng chọn khách hàng trong danh sách');
            QuanLyBanHangStatic.showMessageBox(true, 3000);
        } else{
            button = $(button);
            button.prop('disabled', true);
            button.find('.fa-loading').show();

            var id = $('#txtMaHoaDon').val();
            var TienConLai = $('#txtTienConLai').autoNumeric('get');
            var GhiChu = $('#txtGhiChu').val();


            $.post(QuanLyBanHangStatic.baseURL + 'HoaDon/TaoThanhToan', {id: id, KhachHang: user, TienConLai: TienConLai, GhiChu: GhiChu}, function(data){
                console.log(data);
                QuanLyBanHangStatic.changeMessage('Thông báo', 'Đã thanh toán, hệ thống đang chuyển...', 'fa-spin fa-refresh');
                QuanLyBanHangStatic.showMessageBox(true, 3000);
                setTimeout(function(){
                    window.location.href = QuanLyBanHangStatic.baseURL + 'HoaDon/DanhSach';
                }, 3000);
                //button.find('.fa-loading').hide();

            });
        }
    },
    HuyHoaDon: function(button){
        button = $(button);
        button.prop('disabled', true);
        button.find('.fa-loading').show();
        var id = button.attr('data-text');
        $.get(QuanLyBanHangStatic.baseURL + 'HoaDon/HuyHoaDon/' + id, function(){
            window.location.href = QuanLyBanHangStatic.baseURL + 'HoaDon/DanhSach';
        });
    }
};